﻿using ExcellentProjectPlus.Dominio.Seguridades.Entidades;
using ExcellentProjectPlus.Dominio.Seguridades.Repositorios;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ExcellentProjectPlus.Seguridades.Servicios.Atribuciones
{
    public class ServicioDeAdministracionDeAtribuciones:IServicioDeAdministracionDeAtribuciones
    {
        #region Atributos
        IUnidadDeTrabajoSeguridades _unidadDeTrabajo;
        #endregion

        #region Constructores
        public ServicioDeAdministracionDeAtribuciones(IUnidadDeTrabajoSeguridades unidadDeTrabajo)
        {
            _unidadDeTrabajo = unidadDeTrabajo;
        }
        #endregion

        public IEnumerable<Atribucion> ObtenerAtribuciones()
        {
            return _unidadDeTrabajo.RepositorioAtribuciones.Obtener();
        }
        public Atribucion ObtenerAtribucionPorId(int id)
        {
            return _unidadDeTrabajo.RepositorioAtribuciones.ObtenerPorId(id);
        }
        public void AgregarAtribucion(Atribucion atribucion)
        {
            _unidadDeTrabajo.RepositorioAtribuciones.Agregar(atribucion);
            _unidadDeTrabajo.Confirmar();
        }
        public void ModificarAtribucion(Atribucion atribucion)
        {
            _unidadDeTrabajo.RepositorioAtribuciones.Modificar(atribucion);
            _unidadDeTrabajo.Confirmar();
        }
        public void EliminarAtribucion(Atribucion atribucion)
        {
            _unidadDeTrabajo.RepositorioAtribuciones.Eliminar(atribucion);
            _unidadDeTrabajo.Confirmar();
        }

    }
}
